#ifndef ALIENGEN_TCP_SERVER_H
#define ALIENGEN_TCP_SERVER_H

#include <iostream>
#include <QThread>
#include <QMutex>
#include <QDebug>

#include "AlienGenIO.h"
#include "AlienGenNetHandler.h"

class AlienGenTcpServer : public QThread, public AlienGenIO
{
    Q_OBJECT
private:
    int																	_port;
    AlienGenNetHandler&													_handler;
    fd_set																_master;
    QMutex                                                          	_mutex;

    void run() Q_DECL_OVERRIDE;
public:
    AlienGenTcpServer(int port, AlienGenNetHandler& handler, QObject *parent = 0);
    ~AlienGenTcpServer(void);
};

#endif // ALIENGEN_TCP_SERVER_H
